package br.com.srv.componentes.motorista.service;

import java.util.List;

import br.com.srv.model.GrupoMotoristaTO;
import br.com.srv.model.MotoristaTO;
import br.com.srv.model.VeiculoTO;

public interface GrupoMotoristaService {
	
	public static final String SERVICE_NAME = "grupoMotoristaService";
	
	void salvar(GrupoMotoristaTO grupoMotoristaTO) throws Exception;
	
	void associar(GrupoMotoristaTO grupoMotoristaTO, String usuarioResponsavelId) throws Exception;

	List<GrupoMotoristaTO> buscarGruposMotoristas(GrupoMotoristaTO grupoMotoristaTO) throws Exception;

	void remover(String grupoMotoristaId) throws Exception;

	GrupoMotoristaTO buscarGrupoMotoristaById(String grupoMotoristaId);

	List<GrupoMotoristaTO> buscarGruposMotoristasAtivos(GrupoMotoristaTO grupoMotoristaTO) throws Exception;

	List<MotoristaTO> buscarMotoristasDoGrupo(Integer id) throws Exception;

	List<MotoristaTO> buscarMotoristasNaoDoGrupo(Integer id, List<MotoristaTO> motoristasDoGrupo) throws Exception;

	List<VeiculoTO> buscarVeiculosDoGrupo(Integer id) throws Exception;
	
	void associarVeiculos(GrupoMotoristaTO grupoMotoristaTO, String usuarioResponsavelId) throws Exception;

}
